Settings
Settings()
The configuration settings for the FloodAdapt database and integrator.
Precedence is as follows: user arguments > environment variables > defaults in this class. When loading is done, the settings are validated and the environment variables are updated with the loaded values.
If any required settings are missing or invalid, a ValidationError is raised.
Usage
from flood_adapt import Settings
One of the following:
Load settings from environment variables, if no environment variables are set, use defaults defined in the class:
settings = Settings()
Load settings from a .toml file, overwriting any environment variables set:
settings = Settings.read(toml_path: Path)
Load settings from keyword arguments, overwriting any environment variables:
settings = Settings(DATABASE_ROOT="path/to/database", DATABASE_NAME="database_name")
Attributes
database_name : str
-
The name of the database.
database_root : Path
-
The root directory of the database.
delete_crashed_runs : bool
-
Whether to delete crashed/corrupted runs immediately after they are detected.
sfincs_path : Path
-
The path to the SFINCS binary.
fiat_path : Path
-
The path to the FIAT binary.
validate_allowed_forcings : bool
-
Whether to validate the forcing types and sources against the allowed forcings in the event model.
validate_bin_paths : bool
-
Whether to validate the existence of the paths to the SFINCS and FIAT binaries.
Properties
database_path : Path The full path to the database.
Raises
:
ValidationError
-
If required settings are missing or invalid.
Methods
Name | Description |
---|---|
read | Parse the configuration file and return the parsed settings. |
write | Write the configuration settings to a .toml file. |
read
Settings.read(toml_path: Path)
Parse the configuration file and return the parsed settings.
Parameters
toml_path : Path
-
The path to the configuration file.
Returns
: Settings
-
The parsed configuration settings.
Raises
:
ValidationError
-
If required configuration values are missing or if there is an error parsing the configuration file.
write
Settings.write(toml_path: Path)
Write the configuration settings to a .toml file.
Parameters
toml_path : Path
-
The path to the configuration file.
Returns
: None